home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1987 August / 64er_Magazin_87-08_1987_Markt__Technik_de_Side_A.d64 / disk-optim. ii (.txt) < prev    next >
Encoding:
Commodore BASIC  |  1987-01-01  |  1.3 KB  |  39 lines

  1. 10 s=664:ma=50:ba=1184:az=0:g=0:ge=0:k=0:z=0:x=0:y=0:v=0
  2. 20 dimf%(ma):goto80
  3. 30 :
  4. 40 print"[147]disk-optimizer ii":print"[197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197][197]
  5. 50 [153]"by markus naeher":[142]
  6. 60 :
  7. 70 [143]  *** einlesen ***
  8. 80 [141]40:[153]"laengen der programme eingeben":[129]x[178]0[164]ma
  9. 90 [153]x[170]1"cmd. programm ";:[133]f%(x):[139]f%(x)[177][178]s[167][153]"onon":[137]90
  10. 100 [139]f%(x)[179]0[167]x[178]x[171]1:[153]"ononon":[137]90
  11. 110 [139]f%(x)[179][177]0[167][130]
  12. 120 az[178]x[171]1
  13. 130 :
  14. 140 [143]  *** von gross nach klein ordnen ***
  15. 150 [129]x[178]0[164]az[171]1:g[178]0:[129]y[178]x[164]az:[139]f%(y)[177]g[167]g[178]f%(y):ge[178]y
  16. 160 [130]:f%(ge)[178]f%(x):f%(x)[178]g:[130]
  17. 170 [141]40:[129]x[178]0[164]az:[153]" "f%(x),:[130]:[153]"
  18. 180 :
  19. 190 rem  *** suche nach kombinationen ***
  20. 200 open1,4:print#1,"disk-optimizer ii":dimk%(az*10,az),p%(az)
  21. 210 forz=1toaz-1:forx=0toz:p%(x)=x:next:v=z
  22. 220 rem ** ausgabe der momentanen konfiguration **
  23. 230 forx=p%(v)-1toaz:pokeba+10*x,32:next:forx=0toz:pokeba+10*p%(x),42:next
  24. 240 rem ** testen, ob aktuelle kombination als summe s ergibt, dann ausgabe **
  25. 250 g=0:forx=0toz:g=g+f%(p%(x)):next:print"summe :"g"[157]   [145]":ifg<>sgoto270
  26. 260 forx=0toz:k%(k,p%(x))=1:print#1,f%(p%(x));:next:print#1:k=k+1:goto290
  27. 270 ifg<sandv=0goto320
  28. 280 rem ** naechste kombination ermitteln **
  29. 290 forx=zto0step-1:ifp%(x)=az-z+xthennext:goto320
  30. 300 v=x:p%(v)=p%(v)+1:ifx<zthenforx=v+1toz:p%(x)=p%(x-1)+1:next
  31. 310 goto230
  32. 320 g=0:forx=0toz+1:g=g+f%(az-x):next:ifg<sthennextz
  33. 330 ifg=sthenforx=az-z-1toaz:k%(k,x)=1:print#1,f%(x);:next:print#1:k=k+1
  34. 340 :
  35. 350 rem *** ausgabe der kombinationen als tabelle ***
  36. 360 ifk=0thenclose1:end
  37. 370 forx=0toaz:print#1,right$("      "+str$(f%(x)),len(str$(f%(0))));
  38. 380 fory=0tok-1:print#1,chr$(46-4*k%(y,x));:next:print#1:next:close1
  39.